package org.jeecg.common.util;
import com.csvreader.CsvReader;

import java.io.*;
import java.nio.charset.Charset;
import java.util.ArrayList;

public class CsvUtil {
    public static void main(String[] args) {
        String file="d:\\cert\\DZ_448435520000053_20220530.csv";
        readCsvByCsvReader(file,"GBK");
//        readCsvByBufferedReader(file);
    }

    /**
     * CsvReader 读取
     * @param filePath
     * @return
     */
    public static ArrayList<String[]> readCsvByCsvReader(String filePath,String unicode) {
        ArrayList<String> strList = null;
        try {
            ArrayList<String[]> arrList = new ArrayList<String[]>();
            strList = new ArrayList<String>();
            CsvReader reader = new CsvReader(filePath, ',', Charset.forName(unicode));
            while (reader.readRecord()) {
                arrList.add(reader.getValues()); // 按行读取，并把每一行的数据添加到list集合
            }
            reader.close();
            System.out.println("读取的行数：" + arrList.size());
            return arrList;
            // 如果要返回 String[] 类型的 list 集合，则直接返回 arrList
            // 以下步骤是把 String[] 类型的 list 集合转化为 String 类型的 list 集合

        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }

}
